[INFO] fetching crate ramhorns-ext 0.17.2...
[INFO] fixing ramhorns-ext-0.17.2 against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=end=2015,2024 for pr-157817-2
[INFO] extracting crate ramhorns-ext 0.17.2 into /workspace/builds/worker-4-tc2/source
[INFO] started tweaking crates.io crate ramhorns-ext 0.17.2
[INFO] finished tweaking crates.io crate ramhorns-ext 0.17.2
[INFO] tweaked toml for crates.io crate ramhorns-ext 0.17.2 written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate ramhorns-ext 0.17.2 on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate ramhorns-ext 0.17.2 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: Cargo.toml: `default_features` is deprecated in favor of `default-features` and will not work in the 2024 edition
[INFO] [stderr] (in the `pulldown-cmark` dependency)
[INFO] [stderr] warning: `ramhorns-ext` (manifest) generated 1 warning
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 7555fdd4650731e715ed12c8904f3095755d6f72fd465279144d302d769e7267
[INFO] running `Command { std: "docker" "start" "7555fdd4650731e715ed12c8904f3095755d6f72fd465279144d302d769e7267", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "7555fdd4650731e715ed12c8904f3095755d6f72fd465279144d302d769e7267" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "7555fdd4650731e715ed12c8904f3095755d6f72fd465279144d302d769e7267", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "7555fdd4650731e715ed12c8904f3095755d6f72fd465279144d302d769e7267" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=end=2015,2024", kill_on_drop: false }`
[INFO] [stderr] crater-edition-check: migrating to next edition
[INFO] [stderr]    Migrating Cargo.toml from 2018 edition to 2021
[INFO] [stderr] warning: Cargo.toml: `default_features` is deprecated in favor of `default-features` and will not work in the 2024 edition
[INFO] [stderr] (in the `pulldown-cmark` dependency)
[INFO] [stderr] warning: `ramhorns-ext` (manifest) generated 1 warning
[INFO] [stderr]    Compiling version_check v0.9.4
[INFO] [stderr]    Compiling proc-macro2 v1.0.69
[INFO] [stderr]    Compiling unicode-ident v1.0.12
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling fnv v1.0.7
[INFO] [stderr]    Compiling unicode-segmentation v1.10.1
[INFO] [stderr]    Compiling beef v0.5.2
[INFO] [stderr]    Compiling regex-syntax v0.6.29
[INFO] [stderr]    Compiling pulldown-cmark v0.9.3
[INFO] [stderr]     Checking memchr v2.6.4
[INFO] [stderr]     Checking arrayvec v0.7.4
[INFO] [stderr]     Checking difference v2.0.0
[INFO] [stderr]     Checking ansi_term v0.11.0
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]    Compiling unicase v2.7.0
[INFO] [stderr]    Compiling heck v0.3.3
[INFO] [stderr]     Checking pretty_assertions v0.6.1
[INFO] [stderr]    Compiling quote v1.0.33
[INFO] [stderr]    Compiling syn v2.0.38
[INFO] [stderr]    Compiling logos-codegen v0.13.0
[INFO] [stderr]    Compiling logos-derive v0.13.0
[INFO] [stderr]    Compiling bae v0.1.7
[INFO] [stderr]     Checking logos v0.13.0
[INFO] [stderr]    Compiling ramhorns-derive-ext v0.17.2
[INFO] [stderr]     Checking ramhorns-ext v0.17.2 (/opt/rustwide/workdir)
[INFO] [stderr]    Migrating src/lib.rs from 2018 edition to 2021
[INFO] [stderr]    Migrating src/main.rs from 2018 edition to 2021
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 12.26s
[INFO] [stderr] crater-edition-check: ramhorns-ext v0.17.2 (/opt/rustwide/workdir) updating edition from 2018 to 2021
[INFO] [stderr] warning: Cargo.toml: `default_features` is deprecated in favor of `default-features` and will not work in the 2024 edition
[INFO] [stderr] (in the `pulldown-cmark` dependency)
[INFO] [stderr] warning: `ramhorns-ext` (manifest) generated 1 warning
[INFO] [stderr]     Checking ramhorns-ext v0.17.2 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 12.98s
[INFO] [stderr] crater-edition-check: migrating to next edition
[INFO] [stderr]    Migrating Cargo.toml from 2018 edition to 2021
[INFO] [stderr] warning: Cargo.toml: `default_features` is deprecated in favor of `default-features` and will not work in the 2024 edition
[INFO] [stderr] (in the `pulldown-cmark` dependency)
[INFO] [stderr] warning: `ramhorns-ext` (manifest) generated 1 warning
[INFO] [stderr]     Checking ramhorns-ext v0.17.2 (/opt/rustwide/workdir)
[INFO] [stderr]    Migrating src/lib.rs from 2021 edition to 2024
[INFO] [stderr] error: errors present after applying fixes to crate `ramhorns_ext`
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/content.rs:352:21
[INFO] [stdout]     |
[INFO] [stdout] 352 |         if let Some(ref inner) = self {
[INFO] [stdout]     |                     ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]    --> src/content.rs:352:16
[INFO] [stdout]     |
[INFO] [stdout] 352 |         if let Some(ref inner) = self {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: `--force-warn rust-2024-incompatible-pat` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]     |
[INFO] [stdout] 352 -         if let Some(ref inner) = self {
[INFO] [stdout] 352 +         if let Some(inner) = self {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]  --> src/template/mod.rs
[INFO] [stderr]  ::: src/template/parse.rs
[INFO] [stderr]   = cause: error: expected one of `(`, `,`, `::`, or `=`, found `+`
[INFO] [stderr]              --> src/template/parse.rs:20:51
[INFO] [stderr]               |
[INFO] [stderr]            20 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Logos + use<'s>)]
[INFO] [stderr]               |                                                   ^ expected one of `(`, `,`, `::`, or `=`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: expected one of `(`, `,`, `::`, or `=`, found `+`
[INFO] [stderr]              --> src/template/parse.rs:71:16
[INFO] [stderr]               |
[INFO] [stderr]            71 | #[derive(Logos + use<'s>)]
[INFO] [stderr]               |                ^ expected one of `(`, `,`, `::`, or `=`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `logos` in this scope
[INFO] [stderr]              --> src/template/parse.rs:21:3
[INFO] [stderr]               |
[INFO] [stderr]            21 | #[logos(
[INFO] [stderr]               |   ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]               = note: `logos` is in scope, but it is a crate, not an attribute
[INFO] [stderr]            help: `logos` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            27 + #[derive(Logos)]
[INFO] [stderr]            28 | pub enum Tag {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/template/parse.rs:29:7
[INFO] [stderr]               |
[INFO] [stderr]            29 |     #[token("{{")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            27 + #[derive(Logos)]
[INFO] [stderr]            28 | pub enum Tag {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/template/parse.rs:33:7
[INFO] [stderr]               |
[INFO] [stderr]            33 |     #[token("{{&")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            27 + #[derive(Logos)]
[INFO] [stderr]            28 | pub enum Tag {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/template/parse.rs:34:7
[INFO] [stderr]               |
[INFO] [stderr]            34 |     #[token("{{{", |lex| lex.extras = Braces::Three)]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            27 + #[derive(Logos)]
[INFO] [stderr]            28 | pub enum Tag {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/template/parse.rs:38:7
[INFO] [stderr]               |
[INFO] [stderr]            38 |     #[token("{{#")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            27 + #[derive(Logos)]
[INFO] [stderr]            28 | pub enum Tag {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/template/parse.rs:42:7
[INFO] [stderr]               |
[INFO] [stderr]            42 |     #[token("{{^")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            27 + #[derive(Logos)]
[INFO] [stderr]            28 | pub enum Tag {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/template/parse.rs:46:7
[INFO] [stderr]               |
[INFO] [stderr]            46 |     #[token("{{/")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            27 + #[derive(Logos)]
[INFO] [stderr]            28 | pub enum Tag {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/template/parse.rs:50:7
[INFO] [stderr]               |
[INFO] [stderr]            50 |     #[token("{{!")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            27 + #[derive(Logos)]
[INFO] [stderr]            28 | pub enum Tag {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/template/parse.rs:54:7
[INFO] [stderr]               |
[INFO] [stderr]            54 |     #[token("{{>")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            27 + #[derive(Logos)]
[INFO] [stderr]            28 | pub enum Tag {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/template/parse.rs:58:7
[INFO] [stderr]               |
[INFO] [stderr]            58 |     #[token("{{?")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            27 + #[derive(Logos)]
[INFO] [stderr]            28 | pub enum Tag {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `logos` in this scope
[INFO] [stderr]              --> src/template/parse.rs:72:3
[INFO] [stderr]               |
[INFO] [stderr]            72 | #[logos(
[INFO] [stderr]               |   ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]               = note: `logos` is in scope, but it is a crate, not an attribute
[INFO] [stderr]            help: `logos` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            77 + #[derive(Logos)]
[INFO] [stderr]            78 | enum Closing {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/template/parse.rs:78:7
[INFO] [stderr]               |
[INFO] [stderr]            78 |     #[token("}}", |lex| {
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            77 + #[derive(Logos)]
[INFO] [stderr]            78 | enum Closing {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/template/parse.rs:83:7
[INFO] [stderr]               |
[INFO] [stderr]            83 |     #[token("}}}")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            77 + #[derive(Logos)]
[INFO] [stderr]            78 | enum Closing {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `regex` in this scope
[INFO] [stderr]              --> src/template/parse.rs:86:7
[INFO] [stderr]               |
[INFO] [stderr]            86 |     #[regex(r"[^ \}]+")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `regex` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            77 + #[derive(Logos)]
[INFO] [stderr]            78 | enum Closing {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0204]: the trait `Copy` cannot be implemented for this type
[INFO] [stderr]               --> src/template/mod.rs:135:19
[INFO] [stderr]                |
[INFO] [stderr]            134 | #[derive(Debug, Clone, Copy, PartialEq, Eq)]
[INFO] [stderr]                |                        ---- in this derive macro expansion
[INFO] [stderr]            135 | pub(crate) struct Block<'tpl> {
[INFO] [stderr]                |                   ^^^^^
[INFO] [stderr]            ...
[INFO] [stderr]            139 |     tag: Tag,
[INFO] [stderr]                |     -------- this field does not implement `Copy`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no variant, associated function, or constant named `lexer` found for enum `parse::Tag` in the current scope
[INFO] [stderr]               --> src/template/parse.rs:111:28
[INFO] [stderr]                |
[INFO] [stderr]             27 | pub enum Tag {
[INFO] [stderr]                | ------------ variant, associated function, or constant `lexer` not found for this enum
[INFO] [stderr]            ...
[INFO] [stderr]            111 |         let mut lex = Tag::lexer(source);
[INFO] [stderr]                |                            ^^^^^ variant, associated function, or constant not found in `parse::Tag`
[INFO] [stderr]                |
[INFO] [stderr]                = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]                = note: the following trait defines an item `lexer`, perhaps you need to implement it:
[INFO] [stderr]                        candidate #1: `Logos`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: `parse::Tag` doesn't implement `Debug`
[INFO] [stderr]               --> src/template/mod.rs:139:5
[INFO] [stderr]                |
[INFO] [stderr]            134 | #[derive(Debug, Clone, Copy, PartialEq, Eq)]
[INFO] [stderr]                |          ----- in this derive macro expansion
[INFO] [stderr]            ...
[INFO] [stderr]            139 |     tag: Tag,
[INFO] [stderr]                |     ^^^^^^^^ the trait `Debug` is not implemented for `parse::Tag`
[INFO] [stderr]                |
[INFO] [stderr]            help: consider annotating `parse::Tag` with `#[derive(Debug)]`
[INFO] [stderr]               --> src/template/parse.rs:27:1
[INFO] [stderr]                |
[INFO] [stderr]             27 + #[derive(Debug)]
[INFO] [stderr]             28 | pub enum Tag {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `parse::Tag: Clone` is not satisfied
[INFO] [stderr]               --> src/template/mod.rs:139:5
[INFO] [stderr]                |
[INFO] [stderr]            134 | #[derive(Debug, Clone, Copy, PartialEq, Eq)]
[INFO] [stderr]                |                 ----- in this derive macro expansion
[INFO] [stderr]            ...
[INFO] [stderr]            139 |     tag: Tag,
[INFO] [stderr]                |     ^^^^^^^^ the trait `Clone` is not implemented for `parse::Tag`
[INFO] [stderr]                |
[INFO] [stderr]            note: required by a bound in `std::clone::AssertParamIsClone`
[INFO] [stderr]               --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/clone.rs:458:0
[INFO] [stderr]            help: consider annotating `parse::Tag` with `#[derive(Clone)]`
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/content.rs:370:21
[INFO] [stdout]     |
[INFO] [stdout] 370 |         if let Some(ref item) = self {
[INFO] [stdout]     |                     ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]    --> src/content.rs:370:16
[INFO] [stdout]     |
[INFO] [stdout] 370 |         if let Some(ref item) = self {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]     |
[INFO] [stdout] 370 -         if let Some(ref item) = self {
[INFO] [stdout] 370 +         if let Some(item) = self {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]               --> src/template/parse.rs:27:1
[INFO] [stderr]                |
[INFO] [stderr]             27 + #[derive(Clone)]
[INFO] [stderr]             28 | pub enum Tag {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0369]: binary operation `==` cannot be applied to type `parse::Tag`
[INFO] [stderr]               --> src/template/mod.rs:139:5
[INFO] [stderr]                |
[INFO] [stderr]            134 | #[derive(Debug, Clone, Copy, PartialEq, Eq)]
[INFO] [stderr]                |                              --------- in this derive macro expansion
[INFO] [stderr]            ...
[INFO] [stderr]            139 |     tag: Tag,
[INFO] [stderr]                |     ^^^^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            note: an implementation of `PartialEq` might be missing for `parse::Tag`
[INFO] [stderr]               --> src/template/parse.rs:27:1
[INFO] [stderr]                |
[INFO] [stderr]             27 | pub enum Tag {
[INFO] [stderr]                | ^^^^^^^^^^^^ must implement `PartialEq`
[INFO] [stderr]            help: consider annotating `parse::Tag` with `#[derive(PartialEq)]`
[INFO] [stderr]               --> src/template/parse.rs:27:1
[INFO] [stderr]                |
[INFO] [stderr]             27 + #[derive(PartialEq)]
[INFO] [stderr]             28 | pub enum Tag {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `parse::Tag: Eq` is not satisfied
[INFO] [stderr]               --> src/template/mod.rs:139:5
[INFO] [stderr]                |
[INFO] [stderr]            134 | #[derive(Debug, Clone, Copy, PartialEq, Eq)]
[INFO] [stderr]                |                                         -- in this derive macro expansion
[INFO] [stderr]            ...
[INFO] [stderr]            139 |     tag: Tag,
[INFO] [stderr]                |     ^^^^^^^^ the trait `Eq` is not implemented for `parse::Tag`
[INFO] [stderr]                |
[INFO] [stderr]            note: required by a bound in `std::cmp::AssertParamIsEq`
[INFO] [stderr]               --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/cmp.rs:380:0
[INFO] [stderr]            help: consider annotating `parse::Tag` with `#[derive(Eq)]`
[INFO] [stderr]               --> src/template/parse.rs:27:1
[INFO] [stderr]                |
[INFO] [stderr]             27 + #[derive(Eq)]
[INFO] [stderr]             28 | pub enum Tag {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: aborting due to 22 previous errors
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            Some errors have detailed explanations: E0204, E0277, E0369, E0599.
[INFO] [stderr]            
[INFO] [stderr]            For more information about an error, try `rustc --explain E0204`.
[INFO] [stderr] help: to report this as a bug, open an issue at https://github.com/rust-lang/rust/issues, quoting the full output of this command
[INFO] [stderr] help: to possibly apply more fixes, pass in the `--broken-code` flag
[INFO] [stderr] note: original diagnostics will follow:
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/content.rs:420:19
[INFO] [stdout]     |
[INFO] [stdout] 420 |         if let Ok(ref inner) = self {
[INFO] [stdout]     |                   ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]    --> src/content.rs:420:16
[INFO] [stdout]     |
[INFO] [stdout] 420 |         if let Ok(ref inner) = self {
[INFO] [stdout]     |                ^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]     |
[INFO] [stdout] 420 -         if let Ok(ref inner) = self {
[INFO] [stdout] 420 +         if let Ok(inner) = self {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `impl logos::internal::CallbackResult<'s, (), parse::Tag>` will capture more lifetimes than possibly intended in edition 2024
[INFO] [stdout]   --> src/template/parse.rs:20:45
[INFO] [stdout]    |
[INFO] [stdout] 20 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Logos)]
[INFO] [stdout]    |                                             ^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds
[INFO] [stdout]   --> src/template/parse.rs:20:45
[INFO] [stdout]    |
[INFO] [stdout] 20 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Logos)]
[INFO] [stdout]    |                                             ^
[INFO] [stdout]    = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/rpit-lifetime-capture.html>
[INFO] [stdout]    = note: `--force-warn impl-trait-overcaptures` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout]    = note: this warning originates in the derive macro `Logos` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]    |
[INFO] [stdout] 20 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Logos + use<'s>)]
[INFO] [stdout]    |                                                   +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `impl logos::internal::CallbackResult<'s, (), Closing>` will capture more lifetimes than possibly intended in edition 2024
[INFO] [stdout]   --> src/template/parse.rs:71:10
[INFO] [stdout]    |
[INFO] [stdout] 71 | #[derive(Logos)]
[INFO] [stdout]    |          ^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds
[INFO] [stdout]   --> src/template/parse.rs:71:10
[INFO] [stdout]    |
[INFO] [stdout] 71 | #[derive(Logos)]
[INFO] [stdout]    |          ^
[INFO] [stdout]    = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/rpit-lifetime-capture.html>
[INFO] [stdout]    = note: this warning originates in the derive macro `Logos` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]    |
[INFO] [stdout] 71 | #[derive(Logos + use<'s>)]
[INFO] [stdout]    |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: errors present after applying fixes to crate `ramhorns_ext`
[INFO] [stderr]  --> src/template/mod.rs
[INFO] [stderr]  ::: src/template/parse.rs
[INFO] [stderr]   = cause: error: expected one of `(`, `,`, `::`, or `=`, found `+`
[INFO] [stderr]              --> src/template/parse.rs:20:51
[INFO] [stderr]               |
[INFO] [stderr]            20 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Logos + use<'s>)]
[INFO] [stderr]               |                                                   ^ expected one of `(`, `,`, `::`, or `=`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: expected one of `(`, `,`, `::`, or `=`, found `+`
[INFO] [stderr]              --> src/template/parse.rs:71:16
[INFO] [stderr]               |
[INFO] [stderr]            71 | #[derive(Logos + use<'s>)]
[INFO] [stderr]               |                ^ expected one of `(`, `,`, `::`, or `=`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `logos` in this scope
[INFO] [stderr]              --> src/template/parse.rs:21:3
[INFO] [stderr]               |
[INFO] [stderr]            21 | #[logos(
[INFO] [stderr]               |   ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]               = note: `logos` is in scope, but it is a crate, not an attribute
[INFO] [stderr]            help: `logos` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            27 + #[derive(Logos)]
[INFO] [stderr]            28 | pub enum Tag {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/template/parse.rs:29:7
[INFO] [stderr]               |
[INFO] [stderr]            29 |     #[token("{{")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            27 + #[derive(Logos)]
[INFO] [stderr]            28 | pub enum Tag {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/template/parse.rs:33:7
[INFO] [stderr]               |
[INFO] [stderr]            33 |     #[token("{{&")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            27 + #[derive(Logos)]
[INFO] [stderr]            28 | pub enum Tag {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/template/parse.rs:34:7
[INFO] [stderr]               |
[INFO] [stderr]            34 |     #[token("{{{", |lex| lex.extras = Braces::Three)]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            27 + #[derive(Logos)]
[INFO] [stderr]            28 | pub enum Tag {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/template/parse.rs:38:7
[INFO] [stderr]               |
[INFO] [stderr]            38 |     #[token("{{#")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            27 + #[derive(Logos)]
[INFO] [stderr]            28 | pub enum Tag {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/template/parse.rs:42:7
[INFO] [stderr]               |
[INFO] [stderr]            42 |     #[token("{{^")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            27 + #[derive(Logos)]
[INFO] [stderr]            28 | pub enum Tag {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/template/parse.rs:46:7
[INFO] [stderr]               |
[INFO] [stderr]            46 |     #[token("{{/")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            27 + #[derive(Logos)]
[INFO] [stderr]            28 | pub enum Tag {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/template/parse.rs:50:7
[INFO] [stderr]               |
[INFO] [stderr]            50 |     #[token("{{!")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            27 + #[derive(Logos)]
[INFO] [stderr]            28 | pub enum Tag {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/template/parse.rs:54:7
[INFO] [stderr]               |
[INFO] [stderr]            54 |     #[token("{{>")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            27 + #[derive(Logos)]
[INFO] [stderr]            28 | pub enum Tag {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/template/parse.rs:58:7
[INFO] [stderr]               |
[INFO] [stderr]            58 |     #[token("{{?")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            27 + #[derive(Logos)]
[INFO] [stderr]            28 | pub enum Tag {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `logos` in this scope
[INFO] [stderr]              --> src/template/parse.rs:72:3
[INFO] [stderr]               |
[INFO] [stderr]            72 | #[logos(
[INFO] [stderr]               |   ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]               = note: `logos` is in scope, but it is a crate, not an attribute
[INFO] [stderr]            help: `logos` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            77 + #[derive(Logos)]
[INFO] [stderr]            78 | enum Closing {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/template/parse.rs:78:7
[INFO] [stderr]               |
[INFO] [stderr]            78 |     #[token("}}", |lex| {
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            77 + #[derive(Logos)]
[INFO] [stderr]            78 | enum Closing {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/template/parse.rs:83:7
[INFO] [stderr]               |
[INFO] [stderr]            83 |     #[token("}}}")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            77 + #[derive(Logos)]
[INFO] [stderr]            78 | enum Closing {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `regex` in this scope
[INFO] [stderr]              --> src/template/parse.rs:86:7
[INFO] [stderr]               |
[INFO] [stderr]            86 |     #[regex(r"[^ \}]+")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `regex` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            77 + #[derive(Logos)]
[INFO] [stderr]            78 | enum Closing {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0204]: the trait `Copy` cannot be implemented for this type
[INFO] [stderr]               --> src/template/mod.rs:135:19
[INFO] [stderr]                |
[INFO] [stderr]            134 | #[derive(Debug, Clone, Copy, PartialEq, Eq)]
[INFO] [stderr]                |                        ---- in this derive macro expansion
[INFO] [stderr]            135 | pub(crate) struct Block<'tpl> {
[INFO] [stderr]                |                   ^^^^^
[INFO] [stderr]            ...
[INFO] [stderr]            139 |     tag: Tag,
[INFO] [stderr]                |     -------- this field does not implement `Copy`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no variant, associated function, or constant named `lexer` found for enum `parse::Tag` in the current scope
[INFO] [stderr]               --> src/template/parse.rs:111:28
[INFO] [stderr]                |
[INFO] [stderr]             27 | pub enum Tag {
[INFO] [stderr]                | ------------ variant, associated function, or constant `lexer` not found for this enum
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/content.rs:352:21
[INFO] [stdout]     |
[INFO] [stdout] 352 |         if let Some(ref inner) = self {
[INFO] [stdout]     |                     ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]    --> src/content.rs:352:16
[INFO] [stdout]     |
[INFO] [stdout] 352 |         if let Some(ref inner) = self {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: `--force-warn rust-2024-incompatible-pat` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]     |
[INFO] [stdout] 352 -         if let Some(ref inner) = self {
[INFO] [stdout] 352 +         if let Some(inner) = self {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            ...
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/content.rs:370:21
[INFO] [stdout]     |
[INFO] [stdout] 370 |         if let Some(ref item) = self {
[INFO] [stdout]     |                     ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]    --> src/content.rs:370:16
[INFO] [stdout]     |
[INFO] [stdout] 370 |         if let Some(ref item) = self {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]     |
[INFO] [stdout] 370 -         if let Some(ref item) = self {
[INFO] [stdout] 370 +         if let Some(item) = self {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            111 |         let mut lex = Tag::lexer(source);
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/content.rs:420:19
[INFO] [stdout]     |
[INFO] [stdout] 420 |         if let Ok(ref inner) = self {
[INFO] [stdout]     |                   ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]    --> src/content.rs:420:16
[INFO] [stdout]     |
[INFO] [stdout] 420 |         if let Ok(ref inner) = self {
[INFO] [stdout]     |                ^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]     |
[INFO] [stdout] 420 -         if let Ok(ref inner) = self {
[INFO] [stdout] 420 +         if let Ok(inner) = self {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]                |                            ^^^^^ variant, associated function, or constant not found in `parse::Tag`
[INFO] [stdout] warning: `impl logos::internal::CallbackResult<'s, (), parse::Tag>` will capture more lifetimes than possibly intended in edition 2024
[INFO] [stdout]   --> src/template/parse.rs:20:45
[INFO] [stdout]    |
[INFO] [stdout] 20 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Logos)]
[INFO] [stdout]    |                                             ^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds
[INFO] [stdout]   --> src/template/parse.rs:20:45
[INFO] [stdout]    |
[INFO] [stdout] 20 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Logos)]
[INFO] [stdout]    |                                             ^
[INFO] [stdout]    = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/rpit-lifetime-capture.html>
[INFO] [stdout]    = note: `--force-warn impl-trait-overcaptures` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout]    = note: this warning originates in the derive macro `Logos` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]    |
[INFO] [stdout] 20 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Logos + use<'s>)]
[INFO] [stdout]    |                                                   +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]                |
[INFO] [stdout] warning: `impl logos::internal::CallbackResult<'s, (), Closing>` will capture more lifetimes than possibly intended in edition 2024
[INFO] [stdout]   --> src/template/parse.rs:71:10
[INFO] [stdout]    |
[INFO] [stdout] 71 | #[derive(Logos)]
[INFO] [stdout]    |          ^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds
[INFO] [stdout]   --> src/template/parse.rs:71:10
[INFO] [stdout]    |
[INFO] [stdout] 71 | #[derive(Logos)]
[INFO] [stdout]    |          ^
[INFO] [stdout]    = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/rpit-lifetime-capture.html>
[INFO] [stdout]    = note: this warning originates in the derive macro `Logos` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]    |
[INFO] [stdout] 71 | #[derive(Logos + use<'s>)]
[INFO] [stdout]    |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]                = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]                = note: the following trait defines an item `lexer`, perhaps you need to implement it:
[INFO] [stderr]                        candidate #1: `Logos`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: `parse::Tag` doesn't implement `Debug`
[INFO] [stderr]               --> src/template/mod.rs:139:5
[INFO] [stderr]                |
[INFO] [stderr]            134 | #[derive(Debug, Clone, Copy, PartialEq, Eq)]
[INFO] [stderr]                |          ----- in this derive macro expansion
[INFO] [stderr]            ...
[INFO] [stderr]            139 |     tag: Tag,
[INFO] [stderr]                |     ^^^^^^^^ the trait `Debug` is not implemented for `parse::Tag`
[INFO] [stderr]                |
[INFO] [stderr]            help: consider annotating `parse::Tag` with `#[derive(Debug)]`
[INFO] [stderr]               --> src/template/parse.rs:27:1
[INFO] [stderr]                |
[INFO] [stderr]             27 + #[derive(Debug)]
[INFO] [stderr]             28 | pub enum Tag {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `parse::Tag: Clone` is not satisfied
[INFO] [stderr]               --> src/template/mod.rs:139:5
[INFO] [stderr]                |
[INFO] [stderr]            134 | #[derive(Debug, Clone, Copy, PartialEq, Eq)]
[INFO] [stderr]                |                 ----- in this derive macro expansion
[INFO] [stderr]            ...
[INFO] [stderr]            139 |     tag: Tag,
[INFO] [stderr]                |     ^^^^^^^^ the trait `Clone` is not implemented for `parse::Tag`
[INFO] [stderr]                |
[INFO] [stderr]            note: required by a bound in `std::clone::AssertParamIsClone`
[INFO] [stderr]               --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/clone.rs:458:0
[INFO] [stderr]            help: consider annotating `parse::Tag` with `#[derive(Clone)]`
[INFO] [stderr]               --> src/template/parse.rs:27:1
[INFO] [stderr]                |
[INFO] [stderr]             27 + #[derive(Clone)]
[INFO] [stderr]             28 | pub enum Tag {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0369]: binary operation `==` cannot be applied to type `parse::Tag`
[INFO] [stderr]               --> src/template/mod.rs:139:5
[INFO] [stderr]                |
[INFO] [stderr]            134 | #[derive(Debug, Clone, Copy, PartialEq, Eq)]
[INFO] [stderr]                |                              --------- in this derive macro expansion
[INFO] [stderr]            ...
[INFO] [stderr]            139 |     tag: Tag,
[INFO] [stderr]                |     ^^^^^^^^
[INFO] [stderr]                |
[INFO] [stderr]            note: an implementation of `PartialEq` might be missing for `parse::Tag`
[INFO] [stderr]               --> src/template/parse.rs:27:1
[INFO] [stderr]                |
[INFO] [stderr]             27 | pub enum Tag {
[INFO] [stderr]                | ^^^^^^^^^^^^ must implement `PartialEq`
[INFO] [stderr]            help: consider annotating `parse::Tag` with `#[derive(PartialEq)]`
[INFO] [stderr]               --> src/template/parse.rs:27:1
[INFO] [stderr]                |
[INFO] [stderr]             27 + #[derive(PartialEq)]
[INFO] [stderr]             28 | pub enum Tag {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `parse::Tag: Eq` is not satisfied
[INFO] [stderr]               --> src/template/mod.rs:139:5
[INFO] [stderr]                |
[INFO] [stderr]            134 | #[derive(Debug, Clone, Copy, PartialEq, Eq)]
[INFO] [stderr]                |                                         -- in this derive macro expansion
[INFO] [stderr]            ...
[INFO] [stderr]            139 |     tag: Tag,
[INFO] [stderr]                |     ^^^^^^^^ the trait `Eq` is not implemented for `parse::Tag`
[INFO] [stderr]                |
[INFO] [stderr]            note: required by a bound in `std::cmp::AssertParamIsEq`
[INFO] [stderr]               --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/cmp.rs:380:0
[INFO] [stderr]            help: consider annotating `parse::Tag` with `#[derive(Eq)]`
[INFO] [stderr]               --> src/template/parse.rs:27:1
[INFO] [stderr]                |
[INFO] [stderr]             27 + #[derive(Eq)]
[INFO] [stderr]             28 | pub enum Tag {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: aborting due to 22 previous errors
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            Some errors have detailed explanations: E0204, E0277, E0369, E0599.
[INFO] [stderr]            
[INFO] [stderr]            For more information about an error, try `rustc --explain E0204`.
[INFO] [stderr] help: to report this as a bug, open an issue at https://github.com/rust-lang/rust/issues, quoting the full output of this command
[INFO] [stderr] help: to possibly apply more fixes, pass in the `--broken-code` flag
[INFO] [stderr] note: original diagnostics will follow:
[INFO] [stderr]    Migrating src/main.rs from 2021 edition to 2024
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 14.89s
[INFO] [stderr] crater-edition-check: ramhorns-ext v0.17.2 (/opt/rustwide/workdir) updating edition from 2021 to 2024
[INFO] [stderr] error: failed to parse manifest at `/opt/rustwide/workdir/Cargo.toml`
[INFO] [stderr] 
[INFO] [stderr] Caused by:
[INFO] [stderr]   `default_features` is unsupported as of the 2024 edition; instead use `default-features`
[INFO] [stderr]   (in the `pulldown-cmark` dependency)
[INFO] running `Command { std: "docker" "inspect" "7555fdd4650731e715ed12c8904f3095755d6f72fd465279144d302d769e7267", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7555fdd4650731e715ed12c8904f3095755d6f72fd465279144d302d769e7267", kill_on_drop: false }`
[INFO] [stdout] 7555fdd4650731e715ed12c8904f3095755d6f72fd465279144d302d769e7267
